package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 编码规则配置对象 sys_coding_rule
 * 
 * @author ruoyi
 * @date 2025-08-08
 */
public class SysCodingRule extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 规则ID */
    private Long ruleId;

    /** 规则名称 */
    @Excel(name = "规则名称")
    private String ruleName;

    /** 绑定表名 */
    @Excel(name = "绑定表名")
    private String tableName;

    /** 绑定字段名 */
    @Excel(name = "绑定字段名")
    private String fieldName;

    /** 编码格式配置(JSON) */
    @Excel(name = "编码格式配置(JSON)")
    private String ruleFormat;

    /** 连接符 */
    @Excel(name = "连接符")
    private String separator;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    public void setRuleId(Long ruleId) 
    {
        this.ruleId = ruleId;
    }

    public Long getRuleId() 
    {
        return ruleId;
    }

    public void setRuleName(String ruleName) 
    {
        this.ruleName = ruleName;
    }

    public String getRuleName() 
    {
        return ruleName;
    }

    public void setTableName(String tableName) 
    {
        this.tableName = tableName;
    }

    public String getTableName() 
    {
        return tableName;
    }

    public void setFieldName(String fieldName) 
    {
        this.fieldName = fieldName;
    }

    public String getFieldName() 
    {
        return fieldName;
    }

    public void setRuleFormat(String ruleFormat) 
    {
        this.ruleFormat = ruleFormat;
    }

    public String getRuleFormat() 
    {
        return ruleFormat;
    }

    public void setSeparator(String separator) 
    {
        this.separator = separator;
    }

    public String getSeparator() 
    {
        return separator;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("ruleId", getRuleId())
            .append("ruleName", getRuleName())
            .append("tableName", getTableName())
            .append("fieldName", getFieldName())
            .append("ruleFormat", getRuleFormat())
            .append("separator", getSeparator())
            .append("status", getStatus())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
